package com.briup.mybatis_demo.common.response;

import lombok.Getter;
import lombok.RequiredArgsConstructor;

/**
 * 统一维护响应结果状态码以及响应消息的关系，
 * 主要是维护对于程序中可能存在的业务的失败原因描述
 */
@Getter
@RequiredArgsConstructor
public enum ResultCode {

    // 成功的响应
    SUCCESS(200, "操作成功"),

    // 业务原因导致的失败
    // 参数相关的异常
    PARAMETER_IS_INVALID(10001, "该参数不合法"),
    PARAMETER_IS_BLANK(10002, "该参数不能为空"),

    // 用户方面业务的问题
    USER_IS_NOT_EXISTS(20001, "该用户不存在"),

    INNER_SERVER_ERROR(500, "服务器内部异常，请联系管理员处理");

    private final int code;
    private final String message;
}
